package com.itheima.dubbo.interfaces;

import com.itheima.commons.model.mongo.RecommendUser;
import com.itheima.commons.model.vo.PageResult;

import java.util.List;

/**
 * 首页用户推荐 接口
 */
public interface RecommendUserApi {

    /**
     * 首页今日佳人
     * 根据一个用户的id查询推荐给他的那个最高分的人
     *
     * @param toUserId
     * @return
     */
    RecommendUser queryWithMaxScore(Long toUserId);

    /**
     * 首页推荐列表
     *
     * @param page
     * @param pagesize
     * @param toUserId
     * @return
     */
    PageResult queryRecommendUserList(Integer page, Integer pagesize, Long toUserId);


    /**
     * 根据一个用户的id查询他和其他人的缘分值
     *
     * @param toUserId
     * @param userId
     * @return
     */
    RecommendUser queryScoreByUserId(Long toUserId, Long userId);

    /**
     * 探花功能卡片列表
     *
     * @param counts   要查询的数量
     * @param toUserId 给谁推荐的
     * @return
     */
    List<RecommendUser> queryCardsList(Long toUserId, Integer counts, List<Long> exUserId);

    //查询该用户的全部匹配人数
    Long queryMatchUserCount(Long userId);
}
